/*
* nsMessagePipe.h
*
*  Created on: 2013-3-3
*      Author: lmind
*/

#ifndef NSMESSAGEPIPE_H_
#define NSMESSAGEPIPE_H_


// c844718a-839e-11e2-866e-9f05a48f3a6d
#define NS_MESSAGE_PIPE_CID \
{ 0xc844718a, 0x839e, 0x11e2, { 0x86, 0x6e, 0x9f, 0x05, 0xa4, 0x8f, 0x3a, 0x6d } }
#define NS_MESSAGE_PIPE_CONTRACTID "@lmind.org/message-pipe;1"
#define NS_MESSAGE_PIPE_CLASSNAME "A Simple XPCOM Sample"

class nsMessagePipe : public nsIMessagePipe
{
public:
	NS_DECL_ISUPPORTS;
	NS_DECL_NSIMESSAGEPIPE;

	nsMessagePipe();

	virtual ~nsMessagePipe();

protected:

	nsAutoString m_name;

	nsClassHashtable<nsStringHashKey, nsCOMArray<nsIMessageReceiver>> m_receivers;
};



#endif /* NSMESSAGEPIPE_H_ */
